Beim performance-getriebenen Software-Engineering wird die Performance eines Systems vor seiner Implementierung mithilfe von Modellen berprft.
Nach der Implementierung wird die Performance des Systems durch Performance-Tests validiert. Wenn beim Test eines komponentenbasierten Systems auffllt, dass eine Performance-Anforderung nicht eingehalten wird, muss der Systemarchitekt herausfinden, ob die Komponenten fehlerhaft sind oder die Komponentenverwendung zu Fehlern fhrt. Diese Aufgabe wird Performance-Blame-Analysis genannt. Vorhandene Performance-Analyse-Anstze sind fr die Performance-Blame-Analysis wenig geeignet, weil entweder erwartete Performancewerte genutzt werden, die Performance-Fehler nicht zuverlssig finden, oder weil ihre Analyse komponentenbasierte Systeme nicht ausreichend untersttzt. Dagegen wird in dieser Arbeit der Performance-Blame-Analysis-Ansatz PBlaman beschrieben, der auf komponentenbasierte Systeme spezialisiert ist und die in verschiedenen Kontexten einsetzbaren Performance-Kontrakte des Palladio Component Model (PCM) einsetzt. PBlaman entscheidet, welche Komponenten zu beschuldigen sind, indem es die Antwortzeitdatenreihe jeder Komponentenoperation aus dem fehlgeschlagenen Testfall mit der erwarteten Antwortzeit, die aus den Performance-Kontrakten abgeleitet wird, vergleicht. Der Systemarchitekt erhlt zwei Entscheidungsuntersttzungsartefakte aus der PBlaman-Analyse. Einerseits bietet der Blame-Graph eine bersicht ber den Aufrufbaum. Anderseits vergleicht der Performance-Report die Verteilung beider Antwortzeitdatenreihen und die Lageparameter fr jede Komponentenoperation. Der Nutzen von PBlaman wird in zwei Fallstudien dargestellt, von denen jede eine Anwendung mit einem bestimmten Architekturstil untersucht. Die erste Fallstudie befasst sich mit dem Handelssystem aus dem Common Component Modeling Example (CoCoME), das eine Schichtarchitektur implementiert. Die zweite Fallstudie analysiert ein System, das mithilfe von Algorithmen strukturierte Informationen aus unstrukturierten Texten extrahiert und das eine Pipes-and-Filters-Architektur realisiert. Die Fallstudien zeigen, dass PBlaman auf die Beispiele angewendet werden kann und auch dass die Entscheidungsuntersttzungsartefakte Blame-Graph und Performance-Report konsistente Ergebnisse enthalten.

